package com.nine.controller;

import javax.servlet.http.HttpSession;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import com.nine.service.BillsService;

/**
 * @author hubing
 *
 */
@Controller
public class BillsController {
	@Autowired
	BillsService billsService;

	// 《《《《《《《《《《《《内部转账start》》》》》》》》》》》》
	// 获取登录用户ID（信息）， 进入转账表单填写页面。
	@RequestMapping("transferAccountsPage.do")
	public String transferAccountsPage(Model model, HttpSession session) {
		// 获取登录用户ID————start
		int id = 7;// 设置固定用户ID，整合后删除
//		session.getAttribute("");
		session.setAttribute("loginUserId_HB", id);
		// 获取登录用户ID————end

		float money = billsService.selectAccountMoneyByUserId(id);
		model.addAttribute("money", money);

		return "m_bank/transferAccountsPage.jsp";
	}

	// 根据用户表（username）查询用户是否存在，且非注册会员。
	@ResponseBody
	@RequestMapping("validationMemberByUsername.do")
	public int validationMemberByUsername(String username) {
		return billsService.validationMemberByUsername(username);
	}

	// 验证用户银行账户余额是否足够转账。
	@ResponseBody
	@RequestMapping("validationMoney.do")
	public boolean validationMoney(float money, HttpSession session) {
		int id = (int) session.getAttribute("loginUserId_HB");
		return billsService.validationMoney(id, money);
	}

	// 验证登录用户二级支付密码是否正确。正确：操作数据及数据库。错误：返回false，不进行操作.
	@ResponseBody
	@RequestMapping("verificationPassword.do")
	public boolean verificationPassword(int paycode, float money, HttpSession session, String rid) {
		int id = (int) session.getAttribute("loginUserId_HB");

		boolean temp = billsService.verificationPassword(id, paycode);

		if (temp) {
			billsService.transferOperation(id, rid, money);
			return true;
		} else {
			return false;
		}
	}
	// 《《《《《《《《《《《《内部转账end》》》》》》》》》》》》

	// 《《《《《《《《《《《《申请提现start》》》》》》》》》》》》

	// 《《《《《《《《《《《《申请提现end》》》》》》》》》》》》
}
